home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / CRS / crs59.d81 / natesmac.seq (.txt) < prev    next >
GEOS ConVerT  |  2009-10-10  |  4KB  |  200 lines

  1. natesMac
  2. SEQ formatted GEOS file V1.0
  3. Comm. Compat.
  4. geosSym
  5. BLASTER'S CONVERTER V2.5
  6. Preferences
  7. Pad Color Pref
  8. Write Image V2.1
  9. geoWrite    V1.1
  10. geosMac with bit macros removed and some more essential ones added.
  11. .macro LoadB dest,value
  12.  lda #value
  13.  sta dest
  14. .endm
  15. .macro LoadW dest,value
  16.  lda #](value)
  17.  sta dest+1
  18.  lda #[(value)
  19.  sta dest+0
  20. .endm
  21. .macro MoveB source,dest
  22.  lda source
  23.  sta dest
  24. .endm
  25. .macro MoveW source,dest
  26.  lda source+1
  27.  sta dest+1
  28.  lda source+0
  29.  sta dest+0
  30. .endm
  31. .macro add source
  32.  adc source
  33. .endm
  34. .macro AddB source,dest
  35.  lda source
  36.  adc dest
  37.  sta dest
  38. .endm
  39. .macro AddW source,dest
  40.  lda source
  41.  adc dest+0
  42.  sta dest+0
  43.  lda source+1
  44.  adc dest+1
  45.  sta dest+1
  46. .endm
  47. .macro AddVB value,dest
  48.  lda dest
  49.  adc #value
  50.  sta dest
  51. .endm
  52. .macro AddVW value,dest
  53.  lda #[(value)
  54.  adc dest+0
  55.  sta dest+0
  56. .if (value >= 0) && (value <= 255)
  57.  bcc noInc
  58.  inc dest+1
  59. noInc:
  60. .else
  61.  lda #](value)
  62.  adc dest+1
  63.  sta dest+1
  64. .endif
  65. .endm
  66. .macro sub source
  67.  sbc source
  68. .endm
  69. .macro SubB source,dest
  70.  lda dest
  71.  sbc source
  72.  sta dest
  73. .endm
  74. .macro SubW source,dest
  75.  lda dest+0
  76.  sbc source+0
  77.  sta dest+0
  78.  lda dest+1
  79.  sbc source+1
  80. .macro sub source
  81.  sbc source
  82. .endm
  83. .macro SubB source,dest
  84.  lda dest
  85.  sbc source
  86.  sta dest
  87. .endm
  88. .macro SubW source,dest
  89.  lda dest+0
  90.  sbc source+0
  91.  sta dest+0
  92.  lda dest+1
  93.  sbc source+1
  94.  sta dest+1
  95. .endm
  96. .macro CmpB source,dest
  97.  lda source
  98.  cmp dest
  99. .endm
  100. .macro CmpBI source,immed
  101.  lda source
  102.  cmp #immed
  103. .endm
  104. .macro CmpW source,dest
  105.  lda source+1
  106.  cmp dest+1
  107.  bne done
  108.  lda source+0
  109.  cmp dest+0
  110. done:
  111. .endm
  112. .macro CmpWI source,immed
  113.  lda source+1
  114.  cmp #](immed)
  115.  bne done
  116.  lda source+0
  117.  cmp #[(immed)
  118. done:
  119. .endm
  120. .macro PushB source
  121.  lda source
  122. .endm
  123. .macro PushW source
  124.  lda source+1
  125.  lda source+0
  126. .endm
  127. .macro PopB dest
  128.  sta dest
  129. .endm
  130. .macro PopW dest
  131. .macro PopW dest
  132.  sta dest+0
  133.  sta dest+1
  134. .endm
  135. .macro bra addr
  136.  bvc addr
  137. .endm
  138. .macro IncW addr
  139.  inc addr
  140.  bne done
  141.  inc addr+1
  142. done:
  143. .endm
  144. .macro SubVB value,dest
  145.  lda dest
  146.  sbc #value
  147.  sta dest
  148. .endm
  149. .macro SubVW value,dest
  150.  lda dest+0
  151.  sbc #[(value)
  152.  sta dest+0
  153. .if (value >= 0) && (value <= 255)
  154.  bcs noInc
  155.  dec dest+1
  156. noInc:
  157. .else
  158.  lda dest+1
  159.  sbc #](value)
  160.  sta dest+1
  161. .endif
  162. .endm
  163. .macro DecW zpaddr
  164.  ldx #zpaddr
  165.  jsr Ddec
  166. .endm
  167. .macro DecW2 addr
  168.  lda addr
  169.  bne noover
  170.  dec addr+1
  171. noover:
  172.  dec addr
  173. .endm
  174. .macro SubBW source,dest
  175. lda dest+0
  176. sbc source
  177. sta dest+0
  178. bcs done
  179. dec dest+1
  180. done:
  181. .endm
  182. sta dest+0
  183. bcc done
  184. inc dest+1
  185. done:
  186. .endm
  187. noInc:
  188. .else
  189.  lda #](value)
  190.  adc dest+1
  191.  sta dest
  192. .macro AddBW source,dest
  193. lda source
  194. adc dest+0
  195. sta dest+0
  196. bcc done
  197. inc dest+1
  198. done:
  199. .endm
  200.